package de.szut.entity;

import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;

import java.io.Serializable;

import de.szut.impl.BaseAbilityDaoImpl;

/**
 * Entity class to store single (or a few upgrade-able), skill-able abilities.
 * This is just a entity class, the real data is parsed out of XML files.
 * <p/>
 * Created by dzebcuks on 19.08.13.
 */
@DatabaseTable(daoClass = BaseAbilityDaoImpl.class, tableName = "baseAbility")
public class BaseAbility extends Ability implements Serializable {

    /**
     * Description of the ability to display
     * <p/>
     * NOTE: The description string has to contain a <modifier-value> placeholder,
     * so the real value can be replaced there.
     */
    @DatabaseField
    private String description;

    /**
     * Name of the (base) ability
     */
    @DatabaseField
    private String name;

    @DatabaseField(foreign = true, foreignAutoRefresh = true, foreignAutoCreate = true)
    private AbilityTree abilityTree;

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public AbilityTree getAbilityTree() {
        return abilityTree;
    }

    public void setAbilityTree(AbilityTree abilityTree) {
        this.abilityTree = abilityTree;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
